/*
 * @(#)RegistryServiceConfig.java
 * Date 2013-04-11
 * Version 1.0
 * Author Jim Horner
 * Copyright (c)2012
 */


package us.hornerscorners.lamppost.ihecommon.config;

import us.hornerscorners.lamppost.config.BasicServiceConfig;
import java.util.ArrayList;
import java.util.List;


/**
 * Class description
 *
 *
 * @version        v1.0, 2013-04-11
 * @author         Jim Horner
 */
public class RegistryServiceConfig extends BasicServiceConfig {

    /** Field description */
    private int maximumLeafEntriesReturned;

    /** Field description */
    private List<TestHack> testHacks;

    /**
     * Constructs ...
     *
     */
    public RegistryServiceConfig() {

        super(IHEServiceType.Registry);
        this.testHacks = new ArrayList<>();
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public int getMaximumLeafEntriesReturned() {
        return maximumLeafEntriesReturned;
    }

    /**
     * Method description
     *
     *
     * @return
     */
    public List<TestHack> getTestHacks() {
        return testHacks;
    }

    /**
     * Method description
     *
     *
     * @param maximumLeafEntriesReturned
     */
    public void setMaximumLeafEntriesReturned(int maximumLeafEntriesReturned) {
        this.maximumLeafEntriesReturned = maximumLeafEntriesReturned;
    }

    /**
     * Method description
     *
     *
     * @param testHacks
     */
    public void setTestHacks(List<TestHack> testHacks) {
        this.testHacks = testHacks;
    }

    /**
     * Method description
     *
     *
     * @param hack
     *
     * @return
     */
    public boolean useTestHack(TestHack hack) {
        return this.testHacks.contains(hack);
    }
}
